from rest_framework.pagination import PageNumberPagination
from rest_framework.response import Response

class MeiduoPagination(PageNumberPagination):
    page_size = 5  #默认页大小  没传一般是5,传了以后是最大值限制
    page_size_query_param = 'pagesize'  #查询参数中页大小的键
    max_page_size = 10   #页大小最大值

    def get_paginated_response(self, data):
        return Response({
            # self.page得到当前页的对象,paginator得到分页对象
            'counts':self.page.paginator.count,
            #当前页的数据
            'lists':data,
            #当前页的页码
            'page':self.page.number,
            #总页数
            'pages':self.page.paginator.num_pages,
            #每页容量
            'pagesize':self.page_size
        })